#include "tut/tut.hpp"
#include "Side_Enum.hpp"
#include <typeinfo>

namespace tut
{
  struct Side_testdata{};

  typedef test_group<Side_testdata> Side_testgroup;
  typedef Side_testgroup::object Side_testobj;
  
  // instantiate
  Side_testgroup Side_group("Testing the generated Side_Enum class");


  template<> template<> void Side_testobj::
  test<1>()
  {
    ensure_equals("BUY->'B'", 'B', Side_Enum::BUY.to_char());
    ensure_equals("BUY->'S'", 'S', Side_Enum::SELL.to_char());
    ensure_equals("BUY->'Z'", 'Z', Side_Enum::SHORT.to_char());
    ensure_equals("INVALID_->'!'", '!', Side_Enum::INVALID_.to_char());
  }

} // tut
 
